﻿using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using VOL.Core.Utilities;
using VOL.Entity.DomainModels;

namespace VOL.Domain.IServices.MasterData
{
    public interface IWorkshopSettingService
    {
        /// <summary>
        /// 添加车间设置信息
        /// </summary>
        /// <param name="workshopSetting">车间设置实体</param>
        /// <returns></returns>
        Task<WebResponseContent> AddWorkshopSetting(WorkshopSetting workshopSetting);

        /// <summary>
        /// 获取车间设置信息（带分页和查询）
        /// </summary>
        /// <param name="workshopCode">车间编码（可选，用于模糊查询）</param>
        /// <param name="workshopName">车间名称（可选，用于模糊查询）</param>
        /// <param name="pageIndex">当前页码</param>
        /// <param name="pageSize">每页显示数量</param>
        /// <returns></returns>
        Task<WebResponseContent> GetWorkshopSettings(string workshopCode, string workshopName, int pageIndex, int pageSize);

        /// <summary>
        /// 更新车间设置信息
        /// </summary>
        /// <param name="workshopSetting">车间设置实体</param>
        /// <returns></returns>
        Task<WebResponseContent> UpdateWorkshopSetting(WorkshopSetting workshopSetting);

        /// <summary>
        /// 批量删除车间设置信息
        /// </summary>
        /// <param name="ids">要删除的车间设置ID列表</param>
        /// <returns></returns>
        Task<WebResponseContent> BatchDeleteWorkshopSettings(int[] ids);
    }
}
